package nfes.the.main;

import java.net.MalformedURLException;
import java.rmi.RemoteException;

import javax.xml.rpc.ServiceException;
import nfes.the.util.Constantes;
import nfes.the.util.Util;
import nfes.the.webservice.LoteRpsServiceLocator;

/**
 * @author Julianna Paz
 */
public class ConsumirWebservice {

    public static void main(String[] args) throws RemoteException, ServiceException, MalformedURLException {
//        Para redes com proxy
        Util.setProxy("192.168.50.1", "3128", "julianna", "88595467");
		consultarLote(Constantes.caminhoSalvarXMLRetorno);
//        enviarLote(Constantes.caminhoSalvarXMLRetorno);
//		consultarSequencial(Constantes.caminhoSalvarXMLRetorno);
//		consultarNfsERps(Constantes.caminhoSalvarXMLRetorno);
    }

    public static void consultarLote(String caminhoSalvarXMLRetorno) throws RemoteException, ServiceException {
        String caminhoArquivo = Constantes.caminhoArquivoLote + "RemessaConsultaLote.xml";
        String consultarLote = new LoteRpsServiceLocator().getLoteRps().consultarLote(Util.lerArquivo(caminhoArquivo));
        Util.gerarArquivo(caminhoSalvarXMLRetorno, "consultaLote" + Util.dataHoje(), "xml", consultarLote);
        System.out.println(consultarLote);
    }

    public static void enviarLote(String caminhoSalvarXMLRetorno) throws RemoteException, ServiceException {
        String caminhoArquivo = Constantes.caminhoArquivoEnvio + "3047425Assinado.xml";
        String envioLote = new LoteRpsServiceLocator().getLoteRps().enviar(Util.lerArquivo(caminhoArquivo));
        Util.gerarArquivo(caminhoSalvarXMLRetorno, "Lote" + Util.dataHoje(), "xml", envioLote);
        System.out.println(envioLote);
    }

    public static void consultarSequencial(String caminhoSalvarXMLRetorno) throws RemoteException, ServiceException {
        String caminhoArquivo = "/home/julianna/NetBeansProjects/NFES/src/nfes/the/arquivos/lote/remessa_consultaseqrps-20100309.xml";
        String sequencial = new LoteRpsServiceLocator().getLoteRps().consultarSequencialRps(Util.lerArquivo(caminhoArquivo));
        Util.gerarArquivo(caminhoSalvarXMLRetorno, "consultaSequencial" + Util.dataHoje(), "xml", sequencial);
        System.out.println("Consulta Sequencial Concluida");
    }

    public static void consultarNfsERps(String caminhoSalvarXMLRetorno) throws RemoteException, ServiceException {
        String caminhoArquivo = "/home/julianna/workspace_agespisa/NFES/src/conection/retorno_consultanfse-20100611.xml";
        String RPS = new LoteRpsServiceLocator().getLoteRps().consultarNFSeRps(Util.lerArquivo(caminhoArquivo));
        Util.gerarArquivo(caminhoSalvarXMLRetorno, "consultaRps" + Util.dataHoje(), "xml", RPS);
    }
}
